package com.jic.product.service;

import java.lang.Long;
import java.util.List;

import com.jic.common.base.vo.RestResult;
import com.jic.product.entity.ProductPrice;
import com.jic.common.base.vo.Page;
import com.jic.common.base.vo.PageResult;
import com.jic.product.manage.request.ProductBatchUpdateRequest;
import com.jic.product.manage.request.ProductPriceRequest;
import com.jic.product.manage.response.ProductPriceResponse;
import org.springframework.web.multipart.MultipartFile;

/**
 * 价格表
 *
 * @author :
 * @version : v1.0.0
 * @email :
 * @since : 2020-01-10 07:03:01
 */
public interface ProductPriceService {

    long insert(ProductPrice productPrice);

    long delete(Long id);

    long update(ProductPrice productPrice);

    ProductPrice queryByPrimaryKey(Long id);

    List<ProductPrice> query(ProductPrice productPrice);

    PageResult<ProductPrice> queryPage(ProductPrice productPrice, Page pageQuery);

    /**
     * 查询商品价格
     *
     * @param productPrice
     * @return
     */
    ProductPrice getProductPrice(ProductPrice productPrice);

    /**
     * 更新商家商品价格
     *
     * @param productPriceRequest
     * @return
     */
    long updateProductPrice(ProductPriceRequest productPriceRequest);

    /**
     * 查询价格是否记录
     *
     * @param price
     * @return
     */
    ProductPriceResponse queryProductPrice(ProductPriceRequest price);

    RestResult batchUpdateProductPrice(ProductBatchUpdateRequest productBatchUpdateRequest);

    /**
     * 通过导入店铺商品修改商品价格
     *
     * @return
     */
    RestResult byExcelUpdateProductPrice(String fileName, MultipartFile file) throws Exception;
}
